The present invention relates to a circuit for resetting a computer in response to the state of communication signals received through a modem.
Computers may be reset either by software that monitors the keyboard or other input device for a predetermined input, or by physically actuating a reset switch that asserts the RESET line of the microprocessor. The former is commonly known as a "soft reset" and the latter is commonly known as a "hard reset." As a result of certain error conditions, the computer may enter undesirable states from which it cannot fully recover by executing a soft reset. Once the computer has entered such a state, only a hard reset will return the computer to its normal operating state.
A host computer may communicate with a remote computer over the telephone lines via a modem. A host computer may also communicate with a remote computer or other data communications equipment via direct cabling. In either of these configurations, the communications port of the host computer must be connected to the modem or data communications equipment. The RS-232C standard, promulgated by the Electronics Industries Association (EIA), is commonly used for communications through such a port. The RS-232C standard comprises several signals, including DATA CARRIER DETECT (DCD), DATA SET READY (DSR), and RING INDICATE (RI). A modem or other data communications equipment commonly asserts DSR when it is ready to establish communications and asserts DCD when reliable communications have been established. A modem asserts RI when a ring signal is present on the telephone line to which it is connected.
A host computer that is communicating through its communications port may enter undesirable error states when communications are unexpectedly terminated. Errors in the remote computer, faulty hardware, and problems on the telephone lines may all result in termination of communications. Termination of communications may be detected by the loss of either the DSR or DCD signal. It would be desirable to cause the computer to execute a hard reset in response to these conditions to enable the computer to resume normal communications. It would also be desirable to cause the computer to execute a hard reset upon the occurrence of other events, such as incoming telephone calls. These problems and deficiencies are clearly felt in the art and are solved by the present invention in the manner described below.